package com.ssy.lingxi.contract.model.vo.common.response;

import com.ssy.lingxi.common.model.vo.PageVO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;

/**
 *  分页查询合同订单-新增请款单
 * @author ds
 * @version 2.0.0
 * @date 2021/4/21 18:29
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class ContractOrderPageResponse extends PageVO implements Serializable {

    private static final long serialVersionUID = -444252438818928168L;
    /**
     * 单据id
     */
    private Long orderId;

    /**
     * 申请单号
     */
    private String applyNo;
    /**
     * 申请摘要
     */
    private String applyAbstract;

    /**
     * 申请时间
     */
    private Long orderTime;

    /**
     * 外部状态
     * 待提交申请单 - 1
     * 待确认申请单（已提交申请单） - 2
     * 不接受申请（确认申请单） - 3
     * 接受申请（确认申请单） - 4
     * 待新增退货发货单（确认申请单后） - 5
     * 采购商待新增物流单（新增换货发货单审核通过） - 6
     * 待退货发货（新增物流单审核通过） - 7
     * 待新增退货入库单（已退货发货） - 8
     * 待退货收货（已新增换货入库单） - 9
     * 待确认退货回单（已换货收货） - 10
     * 待退款(确认退货回单) - 11
     * 待确认退款(退款) - 12
     * 确认退款未到账 - 13
     * 待确认售后完成(确认退款) - 14
     * 售后完成 - 15
     */
    private Integer outerStatus;

    /**
     * 外部状态名称
     */
    private String outerStatusName;
    /**
     * 单据金额.
     */
    private Double orderAmount;
    /**
     * 单据类型：1-订单，2-退货申请单
     * ContractOrderTypeEnum
     */
    private String orderTypeName;
    /**
     * 单据类型：1-订单，2-退货申请单
     * ContractOrderTypeEnum
     */
    private Integer orderType;
    /**
     * 待请款.
     */
    private Double toBePayAmount;
    /**
     * 已付款
     */
    private Double payAmount;
    /**
     * 已请款待付款
     */
    private Double unPayApplyAmount;
    /**
     * 是否含税：0-否，1-是
     * CommonBooleanEnum
     */
    private Integer isHasTax;

    /**
     *  税率
     */
    private Double taxRate;
}
